package com.fowo.api.model.bundled.product;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 捆绑产品 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class BundledProductImportPo {

  /** 品名 */
  @ExcelProperty("品名")
  @Size(max = 500, message = "品名长度不能超过500")
  private String name;

  /** SKU */
  @ExcelProperty("SKU")
  @Size(max = 50, message = "SKU长度不能超过50")
  private String sku;

  /** 型号 */
  @ExcelProperty("型号")
  @Size(max = 50, message = "型号长度不能超过50")
  private String model;

  /** 单位 */
  @ExcelProperty("单位")
  @Size(max = 50, message = "单位长度不能超过50")
  private String unit;

  /** 状态 */
  @ExcelProperty("状态")
  private String salesStatus;

  /** 分类 */
  @ExcelProperty("分类")
  @Size(max = 50, message = "分类长度不能超过50")
  private String classifyName;

  @ExcelIgnore
  @Schema(title = "分类")
  private String classify;

  /** 品牌 */
  @ExcelProperty("品牌")
  @Size(max = 50, message = "品牌长度不能超过50")
  private String brandName;

  @ExcelIgnore
  @Schema(title = "品牌")
  private String brand;

  /** 开发人 */
  @ExcelProperty("开发人")
  @Size(max = 50, message = "开发人长度不能超过50")
  private String developerName;

  @ExcelIgnore
  @Schema(title = "开发人")
  private String developer;

  /** 产品负责人 */
  @ExcelProperty("产品负责人")
  @Size(max = 50, message = "产品负责人长度不能超过50")
  private String principalName;

  @ExcelIgnore
  @Schema(title = "产品负责人")
  private String principal;

  /** 分组 */
  @ExcelProperty("分组")
  @Size(max = 50, message = "分组长度不能超过50")
  private String groupName;

  @ExcelIgnore
  @Schema(title = "分组")
  private String group;

  /** 产品标签 */
  @ExcelProperty("产品标签")
  @Size(max = 50, message = "产品标签长度不能超过50")
  private String label;

  /** 信息一 */
  @ExcelProperty("信息一")
  @Size(max = 50, message = "信息一长度不能超过50")
  private String info1;

  /** 信息二 */
  @ExcelProperty("信息二")
  @Size(max = 50, message = "信息二长度不能超过50")
  private String info2;

  /** 电镀颜色 */
  @ExcelProperty("电镀颜色")
  @Size(max = 50, message = "电镀颜色长度不能超过50")
  private String epColor;

  /** 采购成本 */
  @ExcelProperty("采购成本")
  @DecimalString(message = "采购成本小数格式不正确", label = "采购成本")
  private String procurementCost;

  /** 产品描述 */
  @ExcelProperty("产品描述")
  private String productDescription;

  /** 产品类型 */
  @ExcelProperty("产品类型")
  private String type;
}
